The communications systems that use Internet Protocol (IP) and related protocols have grown in the last decade such that even the most remote individuals often can obtain access to these networks. As well known to those skilled in the art, the internet and related communication technologies are session based and are not connection based communications systems, for example, as in the Public Switched Telephone System (PSTN). New communications protocols are now being defined to add new techniques for handling voice and data calls in these IP telecommunications networks.
One recent and popular communications protocol is the Session Initiation Protocol (SIP), which is a signalling protocol for initiating, managing and terminating voice, data and video sessions across packet networks that typically use the Internet Protocol, for example, the ubiquitous Internet. SIP was developed by the Internet Engineering Task Force (IETF) and is specified in IETF Request For Comments (RFC) 2543 and the subsequent 3261 standard, the disclosures which are hereby incorporated by reference in their entirety. SIP is a standard protocol for initiating interactive user sessions that could involve multimedia, including video, voice, chat, gaming and virtual reality. SIP establishes a session and negotiates the capabilities for the session, including the modification or termination of the session. Its open standard is scalable and of general purpose, using a location-independent address system feature in which a called party can be reached based on the party's name and redirection parameters. SIP is text-based, similar to HTTP and SMTP, and works in the application layer of the Open Systems Interconnection (OSI) communications model. As a result, SIP not only can establish multimedia sessions, but also SIP can establish internet telephony calls. Because SIP supports name mapping and redirection, users can initiate and receive communications from any location.
SIP is an efficient request-response protocol, in which requests typically originate from clients, and responses typically originate from servers. Uniform Resource Locators (URL's) or Uniform Resource Identifiers (URI's) can be used to identify a user agent, but E.164 telephone number addressing can also be supported. Various SIP requests are sent through a transport protocol, for example, the User Datagram Protocol (UDP), the Simple Control Transport Protocol (SCTP), or the Transfer Control Protocol (TCP).
The SIP architecture usually includes user agents, divided into a user agent client and user agent server, typically as an application software program or a separate hardware device, for example, a hand-held waveless communications device. The user agent sends SIP requests, which a server accepts for response. Responses are transmitted back to the request. The user agent server would typically contact the client when an SIP request is received and return a response on behalf of a user agent. The SIP protocol is operative to accept, reject or redirect the request.
The SIP architecture includes proxy, redirect or registrar servers. A proxy server is an intermediary server that operates as both a server and a client. It can make requests on behalf of other clients. A redirect server accepts an SIP request, maps the address into zero or more addresses, and returns addresses to a client. The SIP redirect server usually does not initiate SIP requests or accept calls. The registrar server accepts register requests by receiving client transmitted register packets. SIP identifications (ID's) are stored on this registrar server, which contains the location of all user agents within a domain. A registrar server can retrieve and send IP addresses, including unique SIP ID's, and other pertinent information to an SIP proxy server. Typically REGISTER requests are generated by clients and establish or remove a mapping between an SIP address. These requests can retrieve existing mappings. The SIP system typically processes for a specific set of domains and can use a location database to store and retrieve location information. Different protocols can be used to contact the SIP service including Lightweight Directory Access Protocol (LDAP), Remote Authentication Dial-In-User Service (RADIUS) for authentication, and Real-Time Transport Protocol (RTP) for real-time transmission, as non-limiting examples.
A drawback of current communications using SIP involves a user agent requiring manual entry of a SIP ID on a SIP server. For example, if 1,000 SIP-based devices are purchased, they must be provisioned with an SIP ID. There are typically two tasks to perform before the device is SIP-enabled. First, the server must contain an entry that associates to the SIP ID a unique identifier for the device, for example, an IP address, PIN number or e-mail address. This mapping usually is manually entered. On the device or software side, a user (or the software) must also know its own SIP ID, which typically is manually entered before any registration occurs with the SIP registrar server. Also, in some domains, a larger number of potential user agents may exist, which outnumber the availability of SIP ID's.